package cqrtplm.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ty.basic.response.ResponseResult;
import cqrtplm.dto.RTDescribeInformationlDTO;
import cqrtplm.entity.RTDescribeInformationDO;
import cqrtplm.vo.ModuleVO;
import cqrtplm.vo.RTEngraveDemandStatusVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigInteger;
import java.util.List;

@Mapper
public interface RTEngraveMapper extends BaseMapper<RTDescribeInformationDO> {

    void insertEngraveDetails(RTDescribeInformationDO rtDescribeInformationDO);

    List<RTDescribeInformationDO> queryByDescribeInformationCode(String describeInformationCode ,String engraveName,String row1Rule1,String row2Rule1,String row3Rule1,String row4Rule1,String row5Rule1);

    List<BigInteger> selectIbaAttr(String name);

    RTDescribeInformationDO selectByOid(String oid);

    int updateByOid(RTDescribeInformationDO rtDescribeInformation);

    List<RTEngraveDemandStatusVO> selectByEngraveCode(@Param("engraveCode") String engraveCode);

    RTDescribeInformationDO selectByEngraveCodeTwo(String selectvaluecode);

    int updateValueByCode(@Param("selectvaluecode") String selectvaluecode,@Param("statuscode") List<String> statuscode,
                          @Param("value") String value,@Param("name") String name,@Param("oid") BigInteger oid);

    int updateByOidTwo(RTDescribeInformationlDTO rtDescribeInformationlDTO);

    int updateOldStatusCodeAndOldStatusCode(List<String> statuscode);


    void deleteEngraveDetailById(@Param("oIds") List<BigInteger> oIds);

    boolean selectByRuleList(String rulelist);

    List<RTDescribeInformationDO> selectEngraveByProductType(String producttype);

    List<ModuleVO> selectDevCodeAndProductTypeByPartOid(List<BigInteger> partOids);

    List<RTDescribeInformationDO> selectByOids(List<String> oids);

    List<String> searchEuemissionsnoByModel(List<String> model);
}
